<%--
  Created by IntelliJ IDEA.
  User: TYZ
  Date: 2020/3/3
  Time: 16:04
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@include file="/common/common.jsp"%>
<html>
<head>
    <title>Title</title>
</head>
<body>
    <div id="toolbar">
        <input type="button" class="btn btn-success" value="增加"  onclick="toAdd()">
    </div>
<table id="table"></table>
</body>
    <script>
        $('#table').bootstrapTable({
            url: '/publisherController/selectPublisher',//访问后台获取数据的url
            toolbar: '#toolbar',//工具按钮用哪个容器
            method: 'post',
            contentType : "application/x-www-form-urlencoded",//请求参数方式
            striped: true,//是否显示行间隔色
            cache: false, //是否使用缓存，默认为true，所以一般情况下需要设置一下这个属性（*）
            sortable: true, //是否启用排序
            sortOrder: "asc", //排序方式
            pagination: true,//是否显示分页（*）
            sidePagination: "server",//分页方式：client客户端分页，server服务端分页（*）
            pageNumber: 1,  //初始化加载第一页，默认第一页,并记录
            pageSize: 3,  //每页的记录行数（*）
            pageList: [3, 5, 7, 10], //可供选择的每页的行数（*）
            search: true,//是否显示表格搜索,默认false
            cardView: false,//是否显示详细视图
            detailView: false,//是否显示父子表
            showToggle: true,//是否显示详细视图和列表视图的切换按钮
            clickToSelect: true,//是否启用点击选中行
            showRefresh: true,//是否显示刷新按钮
            strictSearch: true,
            showColumns: true,//是否显示所有的列（选择显示的列）
            queryParams : function (params) {
                //这里的键的名字和控制器的变量名必须一直，这边改动，控制器也需要改成一样的
                var temp = {
                    pageSize: params.limit,                         //每页条数
                    pageNum: (params.offset / params.limit) + 1,
                };
                return temp;
            },
            columns: [{
                checkbox: true,
                visible: true,//是否显示复选框
            },{
                field: 'pubId', //field对应的实体类的属性名
                title: 'Id',// title 对应的是表头
                sortable: true,
            },{
                field: 'pubName',
                title: '出版社名',
                sortable: true,
            },{
                field: 'countrys',
                title: '所在国家',
                sortable: true,
            },{
                field: 'provinces',
                title: '所在省',
                sortable: true,
            },{
                field: 'citys',
                title: '所在城市',
                sortable: true,
            },{
                title: '操作',
                width: 120,
                align: 'center',
                valign: 'middle',
                formatter:function(value,row,index){
                    var pubId = row.pubId;// js 数组的方法，将数组里面的值根据join('abc') abc进行拼接
                    return [
                        '<a class="btn btn-xs blue" title="编辑" href="javascript:toUpdate('+pubId+')" ><span class="glyphicon glyphicon-pencil"></span></a>',
                        '<a class="btn btn-xs red" title="删除" href="javascript:deleteUser('+pubId+')"><span class="glyphicon glyphicon-remove"></a>'].join('');
                }
            },]
        });
        //刷新表格
        function getData(){
            $('#table').bootstrapTable("refresh")//refresh 刷新
        }
        function toAdd(){
            BootstrapDialog.show({
                type : BootstrapDialog.TYPE_SUCCESS,//弹出框类型 颜色
                title : '添加用户 ',//load jquery的方法
                message : $('<div></div>').load("/publisherController/toAddPublisher"),//$() 都是jquery对象
                // size : BootstrapDialog.SIZE_SMALL,//size为小，默认的对话框比较宽
                buttons : [ {// 设置关闭按钮
                    label : '关闭',
                    action : function(dialogItself) {//点击按钮方法
                        dialogItself.close();
                    }
                },{
                    label : '确定',
                    cssClass:'btn-success',
                    action : function(dialogItself) {//点击按钮方法
                        $.ajax({
                            url:"/publisherController/addPublisher",
                            data:$("#addForm").serialize(),//参数
                            dataType:"json",
                            type:"post",
                            async:false,
                            success:function(data){
                                if(data==true){
                                    dialogItself.close();
                                    toastr.success("添加成功");
                                    getData();
                                }else{
                                    toastr.error("添加失败");
                                }
                            },
                            error:function(){
                                toastr.error("系统错误，请联系管理员");
                            }
                        })
                    }
                } ],
                // 对话框关闭时带入callback方法
            });
        }
        function toUpdate(pubId){
            BootstrapDialog.show({
                type : BootstrapDialog.TYPE_SUCCESS,//弹出框类型 颜色
                title : '修改用户 ',//load jquery的方法
                message : $('<div></div>').load("/publisherController/updateInfo/"+pubId),//$() 都是jquery对象
                // size : BootstrapDialog.SIZE_SMALL,//size为小，默认的对话框比较宽
                buttons : [ {// 设置关闭按钮
                    label : '关闭',
                    action : function(dialogItself) {//点击按钮方法
                        dialogItself.close();
                    }
                },{
                    label : '确定',
                    cssClass:'btn-success',
                    action : function(dialogItself) {//点击按钮方法
                        $.ajax({
                            url:"/publisherController/updateAll",
                            data:$("#updateForm").serialize(),//参数
                            dataType:"json",
                            type:"post",
                            async:false,
                            success:function(data){
                                if(data==true){
                                    dialogItself.close();
                                    toastr.success("修改成功");
                                    getData();
                                }else{
                                    toastr.error("修改失败");
                                }
                            },
                            error:function(){
                                toastr.error("系统错误，请联系管理员");
                            }
                        })

                    }
                } ],
                // 对话框关闭时带入callback方法
            });
        }
        function deleteUser(pubId){
            var myDialog = dialog({
                title:"删除操作",
                content:"是否删除",
                okValue:"确认",
                ok:function(data){
                    $.ajax({
                        url:"/publisherController/deleteInfo/"+pubId,
                        type:"post",
                        dataType:"json",
                        data:{},//参数
                        async:false,
                        success:function(data){
                            if(data==true){
                                alert("删除成功");
                                getData();
                            }else{
                                alert("删除失败");
                            }
                        },
                        error:function(){
                            alert("系统错误，请联系管理员");
                        }
                    })
                },
                cancelValue:"取消",
                cancel:function(){
                }
            })
            myDialog.showModal();
        }
    </script>
</html>
